package character.race;

import utilities.MinMaxPair;

/**
 * Race maternity values.
 * @author pcdeager
 */
public final class RaceMaternity {
    /**
     * Constructor.
     * @param preg Minimum and maximum age to get pregnant
     * @param mat Minimum and maximum number of days for maternity
     * @param twinProb The probability for twins
     */
    public RaceMaternity(
            final MinMaxPair<Integer> preg,
            final MinMaxPair<Integer> mat,
            final double twinProb) {
        pregnant = preg;
        maternity = mat;
        twinProbability = twinProb;
    }
    /**
     * Get the minimum and maximum age to get pregnant.
     * @return The minimum and maximum pair
     */
    public MinMaxPair<Integer> getPregnantAge() {
        return pregnant;
    }
    /**
     * Get the minimum and maximum days for maternity.
     * @return The minimum and maximum
     */
    public MinMaxPair<Integer> getMaternityDays() {
        return maternity;
    }
    /**
     * Get the probability for twins.
     * @return The probability
     */
    public double getTwinProbability() {
        return twinProbability;
    }
    /**
     * Minimum and maximum age to get pregnant.
     */
    private final MinMaxPair<Integer> pregnant;
    /**
     * The minimum and maximum days of maternity.
     */
    private final MinMaxPair<Integer> maternity;
    /**
     * The probability of twins.
     */
    private final double twinProbability;
}

